[Chapter 31] 31.9 Pitfalls
Author: Bryan Costales & Eric Allman
Date: 1999-01-06T20:13:04Z

#

| Chapter 31 Defined Macros |

## 31.9 Pitfalls

- Macros that are given values while sendmail processes mail may not get the value expected. If that happens, careful hand-tracing of rule sets is required to find the fault. For example, the value in `$g` (see Section 31.10.16, $g) is the result of sender address rewriting and rewriting by the rule set that is specified in the `S=` equate of the selected delivery agent. Because `$g` is used to define the `From:` header line, errors in that line should be traced through errors in the `S=` equate's rule set.

- Macros can have other macros as their values. The sendmail program expands macros recursively. As a consequence, unintentional loops in macro definitions can cause sendmail to appear to hang and to eventually segmentation fault and core dump.

31.8 Macros with the m4 Technique |  | 31.10 Alphabetized Reference